package com.zxjbyte.yiyi.module.system.domain.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.util.Date;

/**
 * @Author zhangxingjia
 * @Date 2023/3/18 9:24
 * @Version: 1.0
 */
@Data
@Schema(description = "异常日志分页响应结构体")
public class ErrorLogListVO {
    
    @Schema(description = "id")
    private Long id;

    @Schema(description = "用户编号")
    private Long userId;

    @Schema(description = "租户编号")
    private String tenantId;

    @Schema(description = "应用名")
    private String applicationName;

    @Schema(description = "请求方法名")
    private String requestMethod;

    @Schema(description = "访问地址")
    private String requestUrl;

    @Schema(description = "请求参数")
    private String requestParams;

    @Schema(description = "用户IP")
    private String userIp;

    @Schema(description = "浏览器UA")
    private String userAgent;

    @Schema(description = "异常发生时间")
    private Date exceptionTime;

    @Schema(description = "异常名")
    private String exceptionName;

    @Schema(description = "异常导致的消息")
    private String exceptionMessage;

    @Schema(description = "异常导致的根消息")
    private String exceptionRootCauseMessage;

    @Schema(description = "异常的栈轨迹")
    private String exceptionStackTrace;

    @Schema(description = "异常发生的类全名")
    private String exceptionClassName;

    @Schema(description = "异常发生的类文件")
    private String exceptionFileName;

    @Schema(description = "异常发生的方法名")
    private String exceptionMethodName;

    @Schema(description = "异常发生的方法所在行")
    private Integer exceptionLineNumber;

    @Schema(description = "处理状态 [0:未处理, 1:已处理, 2:已忽略]")
    private Integer processStatus;

    @Schema(description = "处理时间")
    private Date processTime;

    @Schema(description = "处理用户编号")
    private Long processUserId;

    @Schema(description = "处理备注")
    private String processRemarks;
}
